package com.lingyu.jsjx.domain;

import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 同行评价对象 jsjx_teacher_peer_evaluation
 * 
 * @author ruoyi
 * @date 2025-08-08
 */
@Data
@TableName("jsjx_teacher_peer_evaluation")
public class TeacherPeerEvaluation extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 互评记录ID */
    @TableId(type = IdType.AUTO,value = "peer_eval_id")
    private Long peerEvalId;

    /** 被评教师姓名id */
    @Excel(name = "被评教师姓名id")
    private Long evalTeacherId;

    /** 被评教师姓名name */
    @Excel(name = "被评教师姓名name")
    private String evalTeacherName;

    /** 评价教师姓名id */
    @Excel(name = "评价教师姓名id")
    private Long teacherId;

    /** 评价教师姓名name */
    @Excel(name = "评价教师姓名name")
    private String teacherName;

    /** 所在部门id */
    @Excel(name = "所在部门id")
    private Long deptId;

    /** 所在部门name（下拉选择） */
    @Excel(name = "所在部门name", readConverterExp = "下=拉选择")
    private String deptName;

    /** 教学内容专业性评分（1-10） */
    @Excel(name = "教学内容专业性评分", readConverterExp = "1=-10")
    private Long contentExpertise;

    /** 实训指导规范性评分（1-10） */
    @Excel(name = "实训指导规范性评分", readConverterExp = "1=-10")
    private Long practiceGuidance;

    /** 课程创新参与度评分（1-10） */
    @Excel(name = "课程创新参与度评分", readConverterExp = "1=-10")
    private Long innovation;

    /** 校企合作协同力评分（1-10） */
    @Excel(name = "校企合作协同力评分", readConverterExp = "1=-10")
    private Long industryCollab;

    /** 团队教研贡献评分（1-10） */
    @Excel(name = "团队教研贡献评分", readConverterExp = "1=-10")
    private Long teamContribution;

    /** 学生管理协作评分（1-10） */
    @Excel(name = "学生管理协作评分", readConverterExp = "1=-10")
    private Long studentManagement;

    /** 师德师风表率评分（1-10） */
    @Excel(name = "师德师风表率评分", readConverterExp = "1=-10")
    private Long teachingEthics;

    /** 教学资源共享性评分（1-10） */
    @Excel(name = "教学资源共享性评分", readConverterExp = "1=-10")
    private Long resourceSharing;

    /** 沟通协调效评分（1-10） */
    @Excel(name = "沟通协调效评分", readConverterExp = "1=-10")
    private Long communication;

    /** 职业技能提升度评分（1-10） */
    @Excel(name = "职业技能提升度评分", readConverterExp = "1=-10")
    private Long skillImprovement;

    /** 应急事件处理评分（1-10） */
    @Excel(name = "应急事件处理评分", readConverterExp = "1=-10")
    private Long emergencyHandling;

    /** 综合得分（自动计算） */
    @Excel(name = "综合得分", readConverterExp = "自=动计算")
    private Long totalScore;

    /** 是否匿名（2否1是） */
    private Integer isAnonymousId;
    @Excel(name = "是否匿名", readConverterExp = "2否1是")
    private String isAnonymousName;

    /** 优势专长描述 */
    @Excel(name = "优势专长描述")
    private String strengths;

    /** 意见建议 */
    @Excel(name = "意见建议")
    private String suggestions;
    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("peerEvalId", getPeerEvalId())
            .append("evalTeacherId", getEvalTeacherId())
            .append("evalTeacherName", getEvalTeacherName())
            .append("teacherId", getTeacherId())
            .append("teacherName", getTeacherName())
            .append("deptId", getDeptId())
            .append("deptName", getDeptName())
            .append("contentExpertise", getContentExpertise())
            .append("practiceGuidance", getPracticeGuidance())
            .append("innovation", getInnovation())
            .append("industryCollab", getIndustryCollab())
            .append("teamContribution", getTeamContribution())
            .append("studentManagement", getStudentManagement())
            .append("teachingEthics", getTeachingEthics())
            .append("resourceSharing", getResourceSharing())
            .append("communication", getCommunication())
            .append("skillImprovement", getSkillImprovement())
            .append("emergencyHandling", getEmergencyHandling())
            .append("totalScore", getTotalScore())
            .append("isAnonymousId", getIsAnonymousId())
            .append("isAnonymousName", getIsAnonymousName())
            .append("strengths", getStrengths())
            .append("suggestions", getSuggestions())
            .append("createBy", getCreateBy())
            .append("createByName", getCreateByName())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateByName", getUpdateByName())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
